package com.nxzh.de.executor.mapper.suckback;

import com.nxzh.de.executor.domain.Mode;
import com.nxzh.de.executor.domain.PreventSuckBackLog;
import com.nxzh.de.executor.domain.SuckBackUser;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

@Mapper
@Repository(value = "MaterialEndMapper")
public interface MaterialEndMapper {

//    // power_init_draw_crystal_log
//    // 根据批次号查询日志记录
//    List<BucketLifting> queryLog(@Param("lotNo") String lotNo, @Param("deviceId") String deviceId);
//
//    // 新增日志
//    int addBucketLiftinglLog(BucketLifting bucketLifting);
//
//    // 炉台名称
//    DeviceName queryDeviceName(String deviceId);
//
//    List<DeviceName> queryAllDeviceName();
//
//    // 系列
//    List<HeatTerm4> getHeatNameList(List<String> seriesList);

    // 查询工步对应的配置
    List<Mode> queryAllMode();

    // 记录日志
    int addModelLog(PreventSuckBackLog preventSuckBackLog);

    // 根据炉台ID、工步 查询最近一小时内的日志  1小可配置   deviceId mode createTime
    List<PreventSuckBackLog> getLastSuckBackLog(HashMap<String, String> map);

    // 获取推送用户
    List<SuckBackUser> getPushUser();

    // 最近一小时数据
    List<PreventSuckBackLog> getLastOneHourLog();

    /**
     * 批量插入炉压异常日志
     *
     * @param pushList
     */
    void batchInsertModelLog(ArrayList<PreventSuckBackLog> pushList);
}
